# -*- coding: utf-8 -*-

import wordcloud  # 用于生成词云
import matplotlib.pyplot as plt  # 用于绘图
import pandas as pd  # 用于数据处理
import jieba  # 用于中文分词
import imageio  # 用于读取图片
# 读取CSV文件到DataFrame
df = pd.read_csv('data.csv')
# 从DataFrame中提取评论内容列，并转换为列表
content_list = df['车系'].to_list()
# 将评论内容列表合并为一个长字符串
content = ''.join(content_list)
# 使用jieba进行中文分词，并将分词结果用空格连接成字符串
# 这样做是为了wordcloud库能够正确识别并统计每个词的出现频率
string = ' '.join(jieba.lcut(content))
# 读取背景图片，用于生成词云的形状
# 注意：路径需要正确，且图片格式应为wordcloud库支持的格式
picture = imageio.imread(r'E:\python001\汽车之家\c.png')
# 创建WordCloud对象，并设置相关参数
wc = wordcloud.WordCloud(
    width=1000,
    height=700,
    background_color='white',
    font_path='msyh.ttc',
    mask=picture,       # 使用图片作为词云的形状模板
)
# 生成词云图
wc.generate(string)
# 使用matplotlib显示词云图
plt.axis('off')  # 关闭坐标轴
# 将生成的词云图保存到文件
wc.to_file('car词云.png')
plt.imshow(wc)   # 显示词云图
plt.show()       # 渲染并显示图像